package cn.qinyun.cloud.core.mybatis.injector;

import cn.qinyun.cloud.core.mybatis.injector.methods.*;
import com.baomidou.mybatisplus.core.injector.AbstractMethod;
import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * 类名称：MateSqlInjector <br>
 * 类描述：TODO <br>
 *
 * @author 张兆发
 * @date 创建时间：2021/7/15  8:19 下午 <br>
 * @version 1.0.0
 */
public class MateSqlInjector extends DefaultSqlInjector {

    @Override
    public List<AbstractMethod> getMethodList(Class<?> mapperClass) {
        List<AbstractMethod> methodList = new ArrayList<>();
        methodList.add(new InsertBatch());
        methodList.add(new InsertIgnore());
        methodList.add(new InsertIgnoreBatch());
        methodList.add(new Replace());
        methodList.add(new ReplaceBatch());
        methodList.addAll(super.getMethodList(mapperClass));
        return Collections.unmodifiableList(methodList);
    }

}
